package com.itany.corejava.code12_集合.list;

import java.util.Arrays;
import java.util.LinkedList;

/**
 * @author 石小俊
 * @version 1.0
 * @date 2023年03月21日 15:13
 */
public class Test04_LinkedList {

    public static void main(String[] args) {
        // 两种定义方式
        // 方式一:定义一个空集合
        LinkedList<String> list = new LinkedList<>();
        // 方式二:将一个Collection类型以及其子孙类转换成对应的LinkedList
        LinkedList<Integer> list2 = new LinkedList<>(Arrays.asList(1, 3, 4, 6));
        System.out.println(list);
        System.out.println(list2);

        // 按照顺序正常添加
        list.add("admin");
        list.add("jack");
        list.add("tom");
        System.out.println(list);
        // addFirst:向队首添加
        list.addFirst("alice");
        // addLast:向队尾添加
        list.addLast("root");
        System.out.println(list);

        // getFirst:获取队首元素
        System.out.println(list.getFirst());
        System.out.println(list.get(0));

        // getLast:获取队尾元素
        System.out.println(list.getLast());
        System.out.println(list.get(list.size() - 1));

        // 删除第一个
        list.removeFirst();
        // 删除最后一个
        list.removeLast();
        System.out.println(list);

    }

}
